DRMAA or Distributed Resource Management Application API is a high-level Open Grid Forum API specification for the submission and control of jobs to a Distributed Resource Management (DRM) system, such as a Cluster or Grid computing infrastructure. The scope of the API covers all the high level functionality required for applications to submit, control, and monitor jobs on execution resources in the DRM system.
In 2007, DRMAA was one of the first two (the other one was GridRPC) specifications that reached the full recommendation status in the Open Grid Forum.[1]
Contents |
The development of this API was done through the Global Grid Forum, in the model of IETF standard development, and it was originally co-authored by:
This specification was first proposed at Global Grid Forum 3 (GGF3)[2] in Frascati, Italy, but gained most of its momentum at Global Grid Forum 4 in Toronto, Ontario. The development of the specification was first proposed with the objective to facilitate direct interfacing of applications to existing DRM systems by application's builders, portal builders, and Independent Software Vendors (ISVs). Because the API was co-authored by participants from a wide-selection of companies and included participants from industries and education, its development resulted in an open standard that received a relatively good reception from a wide audience quickly.
Without DRMAA, no standard model existed to submit jobs to component regions of a Grid, assuming each region was running local DRMSs. The first version of DRMAA API has been implemented in Sun's Grid Engine and also in the University of Wisconsin–Madison's program Condor. Furthermore C, Java, and IDL binding documents have been made available.
Other language bindings can be generated easily from SWIG, which was first used by the Perl binding.
A number of software solutions use DRMAA to interface with different resource management systems:[16]